package com.fxu.docx2md;

import com.fxu.docx2md.dto.DocxTree;
import com.fxu.docx2md.dto.MdLine;
import org.apache.poi.xwpf.usermodel.IBodyElement;

import java.util.List;

/**
 * <p>小飞鼠</p>
 * 文档处理接口
 *
 * @author fangxu
 * @version 1.0.0
 */
public interface IDocx {
    /**
     * <p>处理目录</p>
     * @param elements 元素列表
     */
    DocxTree toc(List<IBodyElement> elements);

    /**
     * <p>处理标题</p>
     * @param elements 元素列表
     */
    List<MdLine> title(List<IBodyElement> elements);

    /**
     * <p>处理图片</p>
     * @param elements 元素列表
     */
    List<MdLine> image(List<IBodyElement> elements);

    /**
     * <p>处理表格</p>
     * @param elements 元素列表
     */
    List<MdLine> table(List<IBodyElement> elements);

    /**
     * <p>处理公式</p>
     * @param elements 元素列表
     */
    List<MdLine> math(List<IBodyElement> elements);

    /**
     * <p>处理分录</p>
     * @param elements 元素列表
     */
    List<MdLine> entry(List<IBodyElement> elements);

    /**
     * <p>处理信息块</p>
     * @param elements 元素列表
     */
    List<MdLine> info(List<IBodyElement> elements);

    /**
     * <p>处理提示块</p>
     * @param elements 元素列表
     */
    List<MdLine> tip(List<IBodyElement> elements);

    /**
     * <p>处理题目块</p>
     * @param elements 元素列表
     */
    List<MdLine> qst(List<IBodyElement> elements);
}